package goiot.dto;

import java.util.Date;
import java.util.List;
import java.util.Map;

public class Product {
	/**
	 * 产品ID
	 */
	private String id;
	/**
	 * 名称
	 */
	private String name;
	/**
	 * 网络类型MQTT_BROKER
	 */
	private String networkType;
	/**
	 * 物模型
	 */
	private String metadata;
	/**
	 * 配置属性
	 */
	private List<MetaConfig> metaconfig;
	/**
	 * true启用，false禁用
	 */
	private Boolean state;
	/**
	 * 数据存储策略
	 */
	private String storePolicy;
	/**
	 * 编解码脚本
	 */
	private String script;
	/**
	 * 标签
	 */
	private Map<String, ?> tag;
	/**
	 * 说明
	 */
	private String desc;
	
	private Date createTime;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getNetworkType() {
		return networkType;
	}

	public void setNetworkType(String networkType) {
		this.networkType = networkType;
	}

	public String getMetadata() {
		return metadata;
	}

	public void setMetadata(String metadata) {
		this.metadata = metadata;
	}

	public List<MetaConfig> getMetaconfig() {
		return metaconfig;
	}

	public void setMetaconfig(List<MetaConfig> metaconfig) {
		this.metaconfig = metaconfig;
	}

	public Boolean getState() {
		return state;
	}

	public void setState(Boolean state) {
		this.state = state;
	}

	public String getStorePolicy() {
		return storePolicy;
	}

	public void setStorePolicy(String storePolicy) {
		this.storePolicy = storePolicy;
	}

	public String getScript() {
		return script;
	}

	public void setScript(String script) {
		this.script = script;
	}

	public Map<String, ?> getTag() {
		return tag;
	}

	public void setTag(Map<String, ?> tag) {
		this.tag = tag;
	}

	public String getDesc() {
		return desc;
	}

	public void setDesc(String desc) {
		this.desc = desc;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	@Override
	public String toString() {
		return super.toString() + " [id=" + id + ", name=" + name + ", networkType=" + networkType + ", metadata=" + metadata
				+ ", metaconfig=" + metaconfig + ", state=" + state + ", storePolicy=" + storePolicy + ", script="
				+ script + ", tag=" + tag + ", desc=" + desc + ", createTime=" + createTime + "]";
	}
	
}
